package com.hitqz.robot.api.common.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.v3.oas.annotations.media.Schema;

import java.io.Serializable;
import java.util.List;

/**
 * @author xupkun
 * @date 2024/5/21
 */
@Schema(description = "地图实体类")
public class RobotMap implements Serializable {

    private static final long serialVersionUID = -1665656697017193649L;
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    @Schema(description = "地图名称")
    private String mapName;
    @Schema(description = "地图编码")
    private String mapCode;
    @Schema(description = "地图原点x坐标")
    private float mapOriginx;
    @Schema(description = "地图原点y坐标")
    private float mapOriginy;
    @Schema(description = "地图比例尺")
    private float mapResolution;

    @Schema(description = "最小x坐标")
    private float minX;
    @Schema(description = "最小y坐标")
    private float minY;
    @Schema(description = "最大x坐标")
    private float maxX;
    @Schema(description = "最大y坐标")
    private float maxY;
    @Schema(description = "图片宽度")
    private Integer width;
    @Schema(description = "图片长度")
    private Integer height;

    /**
     * 不一定每个都有
     */
    @Schema(description = "地图y轴比例尺")
    private float mapResolutionY;
    @Schema(description = "地图类型1-2D地图，2-3D地图，3-轨道模型图，4-二维码虚拟地图，5-PB地图")
    private Integer type;
    @Schema(description = "地图路径")
    private String filePath;
    @TableField(exist = false)
    private List<RobotMapPos> posList;


    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getMapName() {
        return mapName;
    }

    public void setMapName(String mapName) {
        this.mapName = mapName;
    }

    public String getMapCode() {
        return mapCode;
    }

    public void setMapCode(String mapCode) {
        this.mapCode = mapCode;
    }

    public float getMapOriginx() {
        return mapOriginx;
    }

    public void setMapOriginx(float mapOriginx) {
        this.mapOriginx = mapOriginx;
    }

    public float getMapOriginy() {
        return mapOriginy;
    }

    public void setMapOriginy(float mapOriginy) {
        this.mapOriginy = mapOriginy;
    }

    public float getMapResolution() {
        return mapResolution;
    }

    public void setMapResolution(float mapResolution) {
        this.mapResolution = mapResolution;
    }

    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    public String getFilePath() {
        return filePath;
    }

    public void setFilePath(String filePath) {
        this.filePath = filePath;
    }

    public float getMapResolutionY() {
        return mapResolutionY;
    }

    public void setMapResolutionY(float mapResolutionY) {
        this.mapResolutionY = mapResolutionY;
    }

    public Integer getWidth() {
        return width;
    }

    public void setWidth(Integer width) {
        this.width = width;
    }

    public Integer getHeight() {
        return height;
    }

    public void setHeight(Integer height) {
        this.height = height;
    }

    public float getMinX() {
        return minX;
    }

    public void setMinX(float minX) {
        this.minX = minX;
    }

    public float getMinY() {
        return minY;
    }

    public void setMinY(float minY) {
        this.minY = minY;
    }

    public float getMaxX() {
        return maxX;
    }

    public void setMaxX(float maxX) {
        this.maxX = maxX;
    }

    public float getMaxY() {
        return maxY;
    }

    public void setMaxY(float maxY) {
        this.maxY = maxY;
    }

    public List<RobotMapPos> getPosList() {
        return posList;
    }

    public void setPosList(List<RobotMapPos> posList) {
        this.posList = posList;
    }
}
